package br.com.hs.nfe.common.exportacao;

import br.com.hs.nfe.common.enumeration.ExtensaoArquivoEnum;
import br.com.hs.nfe.common.exception.HSCommonException;
import br.com.hs.nfe.common.util.IOHelper;
import br.com.hs.nfe.common.to.NotaFiscalTO;

/**
 * Classe responsável pela exportação dos dados da NF-e.
 * @author Ranlive Hrysyk
 */
public class ExportacaoBusiness {

    /**
     * 
     * @param notaFiscalTO
     * @param extensao
     * @param diretorio
     * @param nome
     * @return
     */
    public static boolean exportarNotaFiscal(NotaFiscalTO notaFiscalTO, ExtensaoArquivoEnum extensao, String diretorio, String nome) {
        String xml = notaFiscalTO.getXmlString();
        String path = diretorio + nome + extensao.getExtensao();
        switch (extensao.ordinal()) {
            case 0: //XML
                return exportar(xml, path);
            case 1: //TXT
        }

        return false;
    }

    /**
     * Grava o arquivo em disco.
     */
    private static boolean exportar(String xml, String path) {
            try {
                IOHelper.writeFile(path, xml);
                return true;
            } catch (HSCommonException ex) {
                System.out.println(ex.getMessage());
                return false;
            }
    }
}
